substitution rule calculus